home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 30
/
Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso
/
Aminet
/
biz
/
haage
/
WarpUP_V31.lha
/
WarpUP-WarpOS
/
include
/
stormprotos
/
powerpc_sprotos.h
Wrap
C/C++ Source or Header
|
1998-04-07
|
18KB
|
543 lines
#ifndef STORMPROTOS_POWERPC_SPROTOS_H
#define STORMPROTOS_POWERPC_SPROTOS_H
/*
** $VER: powerpc_sprotos.h 2.0 (15.03.98)
** WarpOS Release 14.1
**
** '(C) Copyright 1998 Haage & Partner Computer GmbH'
** All Rights Reserved
*/
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif
#ifndef DEVICES_TIMER_H
#include <devices/timer.h>
#endif
#ifndef POWERPC_PORTSPPC_H
#include <powerpc/portsPPC.h>
#endif
#ifndef POWERPC_TASKS_H
#include <powerpc/tasksppc.h>
#endif
#ifndef POWERPC_SEMAPHORES_H
#include <powerpc/semaphoresppc.h>
#endif
#ifdef __PPC__
/*
Attention: The names for this PPC functions (all have a suffix "_"
are subject to change. As soon as the StormC PPC compiler
is able to add the "struct Library *" by default for
shared library functions the names will loose the suffix.
Please use the __inline functions from the end of this file.
*/
extern "AmigaLib" PowerPCBase {
/* *** call 68K */
ULONG Run68K_(struct Library *, struct PPCArgs *) = -300;
ULONG WaitFor68K_(struct Library *, struct PPCArgs *) = -306;
/* *** debugging */
VOID SPrintF_(struct Library *, STRPTR, APTR) = -312;
/* *** memory */
APTR AllocVecPPC_(struct Library *, ULONG, ULONG, ULONG) = -324;
LONG FreeVecPPC_(struct Library *, APTR) = -330;
/* *** time measurement */
VOID GetSysTimePPC_(struct Library*, struct timeval *) = -684;
VOID AddTimePPC_(struct Library*, struct timeval *, struct timeval *) = -690;
VOID SubTimePPC_(struct Library*, struct timeval *, struct timeval *) = -696;
LONG CmpTimePPC_(struct Library*, struct timeval *, struct timeval *) = -702;
#ifndef POWERPCLIB_V7
/* *** more debugging */
ULONG SnoopTask_(struct Library *, struct TagItem *) = -714;
/* ULONG SnoopTaskTags_(struct Library *, Tag tag1, ...) = -714; */
VOID EndSnoopTask_(struct Library *, ULONG) = -720;
/* *** more memory */
VOID FreeAllMem_(struct Library *) = -654;
VOID CopyMemPPC_(struct Library *, APTR, APTR, ULONG) = -660;
/* *** lists */
VOID AddHeadPPC_(struct Library *, struct List *, struct Node *) = -408;
VOID AddTailPPC_(struct Library *, struct List *, struct Node *) = -414;
VOID EnqueuePPC_(struct Library *, struct List *, struct Node *) = -438;
struct Node *FindNamePPC_(struct Library *, struct List *, STRPTR) = -444;
VOID InsertPPC_(struct Library *, struct Node *, struct Node *) = -402;
struct Node *RemHeadPPC_(struct Library *, struct List *) = -426;
VOID RemovePPC_(struct Library *, struct Node *) = -420;
struct Node *RemTailPPC_(struct Library *, struct Node *) = -432;
/* *** semaphores */
VOID AddSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -366;
LONG AttemptSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -384;
struct SignalSemaphorePPC *FindSemaphorePPC_(struct Library *, STRPTR) = -396;
VOID FreeSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -360;
LONG InitSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -354;
VOID ObtainSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -378;
VOID ReleaseSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -390;
VOID RemSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -372;
/* *** signals */
LONG AllocSignalPPC_(struct Library *, LONG) = -468;
VOID FreeSignalPPC_(struct Library *, LONG) = -474;
ULONG SetSignalPPC_(struct Library *, ULONG, ULONG) = -480;
VOID SignalPPC_(struct Library *, struct TaskPPC *, ULONG) = -486;
ULONG WaitPPC_(struct Library *, ULONG) = -492;
ULONG WaitTime_(struct Library *, ULONG, ULONG) = -552;
/* *** tasks */
struct TaskPPC *CreateTaskPPC_(struct Library *, struct TagItem *) = -336;
/* struct TaskPPC *CreateTaskPPCTags_(struct Library *, Tag tag1, ...) = -336; */
VOID DeleteTaskPPC_(struct Library *, struct TaskPPC *) = -342;
struct TaskPPC *FindTaskPPC_(struct Library *, STRPTR) = -348;
struct TaskPtr *LockTaskList_(struct Library *) = -564;
LONG SetTaskPriPPC_(struct Library *, struct TaskPPC *, LONG) = -498;
VOID UnLockTaskList_(struct Library *) = -570;
struct TaskPPC *FindTaskByID_(struct Library *, LONG) = -738;
LONG SetNiceValue_(struct Library *, struct TaskPPC *, LONG) = -744;
/* *** ports */
VOID AddPortPPC_(struct Library *, struct MsgPortPPC *) = -612;
struct MsgPortPPC *CreateMsgPortPPC_(struct Library *) = -600;
VOID DeleteMsgPortPPC_(struct Library *, struct MsgPortPPC *) = -606;
struct MsgPortPPC *FindPortPPC_(struct Library *, STRPTR) = -624;
struct Message *GetMsgPPC_(struct Library *, struct MsgPortPPC *) = -642;
VOID PutMsgPPC_(struct Library *, struct MsgPortPPC *, struct Message *) = -636;
struct Message *WaitPortPPC_(struct Library *, struct MsgPortPPC *) = - 630;
VOID RemPortPPC_(struct Library *, struct MsgPortPPC *) = -618;
VOID ReplyMsgPPC_(struct Library *, struct Message *) = -648;
struct Message *AllocXMsgPPC_(struct Library *, ULONG, struct MsgPortPPC *) = -666;
VOID FreeXMsgPPC_(struct Library *, struct Message *) = -672;
VOID PutXMsgPPC_(struct Library *, struct MsgPort *, struct Message *) = -678;
struct MsgPortPPC *SetReplyPortPPC_(struct Library *, struct Message *, struct MsgPortPPC *) = -708;
/* *** tag items */
struct TagItem *FindTagItemPPC_(struct Library *, ULONG, struct TagItem *) = -450;
ULONG GetTagDataPPC_(struct Library *, ULONG, ULONG, struct TagItem *) = -456;
struct TagItem *NextTagItemPPC_(struct Library *, struct TagItem **) = -462;
/* *** hardware */
VOID ChangeMMU_(struct Library *, ULONG) = -588;
VOID GetInfo_(struct Library *, struct TagItem *) = -594;
VOID SetCache_(struct Library *, ULONG, APTR, ULONG) = -510;
ULONG SetHardware_(struct Library *, ULONG, APTR) = -540;
VOID GetHALInfo_(struct Library *, struct TagItem *) = -726;
VOID SetScheduling_(struct Library *, struct TagItem *) = -732;
/* *** exceptions */
VOID ModifyFPExc_(struct Library *, ULONG) = -546;
VOID RemExcHandler_(struct Library *, APTR) = -522;
APTR SetExcHandler_(struct Library *, struct TagItem *) = -516;
/* APTR SetExcHandlerTags_(struct Library *, Tag tag1, ...) = -516; */
VOID SetExcMMU_(struct Library *) = -576;
VOID ClearExcMMU_(struct Library *) = -582;
/* *** supervisor */
ULONG Super_(struct Library *) = -528;
VOID User_(struct Library *, ULONG) = -534;
/* *** 68K connection */
VOID Signal68K_(struct Library *, struct Task *, ULONG) = -504;
#endif /* POWERPCLIB_V7 */
};
__inline ULONG Run68K(struct PPCArgs *a1)
{
extern struct Library *PowerPCBase;
return Run68K_(PowerPCBase,a1);
}
__inline ULONG WaitFor68K(struct PPCArgs *a1)
{
extern struct Library *PowerPCBase;
return WaitFor68K_(PowerPCBase,a1);
}
__inline VOID SPrintF(STRPTR a1, APTR a2)
{
extern struct Library *PowerPCBase;
SPrintF_(PowerPCBase,a1,a2);
}
__inline APTR AllocVecPPC(ULONG a1, ULONG a2, ULONG a3)
{
extern struct Library *PowerPCBase;
return AllocVecPPC_(PowerPCBase,a1,a2,a3);
}
__inline VOID GetSysTimePPC(struct timeval *a1)
{
extern struct Library *PowerPCBase;
GetSysTimePPC_(PowerPCBase,a1);
}
__inline VOID AddTimePPC(struct timeval *a1, struct timeval *a2)
{
extern struct Library *PowerPCBase;
AddTimePPC_(PowerPCBase,a1,a2);
}
__inline VOID SubTimePPC(struct timeval *a1, struct timeval *a2)
{
extern struct Library *PowerPCBase;
SubTimePPC_(PowerPCBase,a1,a2);
}
__inline LONG CmpTimePPC(struct timeval *a1, struct timeval *a2)
{
extern struct Library *PowerPCBase;
return CmpTimePPC_(PowerPCBase,a1,a2);
}
__inline VOID FreeVecPPC(APTR a1)
{
extern struct Library *PowerPCBase;
FreeVecPPC_(PowerPCBase,a1);
}
#ifndef POWERPCLIB_V7
__inline ULONG SnoopTask(struct TagItem *a1)
{
extern struct Library *PowerPCBase;
return SnoopTask_(PowerPCBase,a1);
}
__inline ULONG SnoopTaskTags(Tag tag1, ...)
{
extern struct Library *PowerPCBase;
return SnoopTask_(PowerPCBase,(struct TagItem *) &tag1);
}
__inline VOID EndSnoopTask(ULONG a1)
{
extern struct Library *PowerPCBase;
EndSnoopTask_(PowerPCBase,a1);
}
__inline VOID FreeAllMem()
{
extern struct Library *PowerPCBase;
FreeAllMem_(PowerPCBase);
}
__inline VOID CopyMemPPC(APTR a1, APTR a2, ULONG a3)
{
extern struct Library *PowerPCBase;
CopyMemPPC_(PowerPCBase,a1,a2,a3);
}
__inline VOID AddHeadPPC(struct List *a1, struct Node *a2)
{
extern struct Library *PowerPCBase;
AddHeadPPC_(PowerPCBase,a1,a2);
}
__inline VOID AddTailPPC(struct List *a1, struct Node *a2)
{
extern struct Library *PowerPCBase;
AddTailPPC_(PowerPCBase,a1,a2);
}
__inline VOID EnqueuePPC(struct List *a1, struct Node *a2)
{
extern struct Library *PowerPCBase;
EnqueuePPC_(PowerPCBase,a1,a2);
}
__inline struct Node *FindNamePPC(struct List *a1, STRPTR a2)
{
extern struct Library *PowerPCBase;
return FindNamePPC_(PowerPCBase,a1,a2);
}
__inline VOID InsertPPC(struct Node *a1, struct Node *a2)
{
extern struct Library *PowerPCBase;
InsertPPC_(PowerPCBase,a1,a2);
}
__inline struct Node *RemHeadPPC(struct List *a1)
{
extern struct Library *PowerPCBase;
return RemHeadPPC_(PowerPCBase,a1);
}
__inline VOID RemovePPC(struct Node *a1)
{
extern struct Library *PowerPCBase;
RemovePPC_(PowerPCBase,a1);
}
__inline struct Node *RemTailPPC(struct Node *a1)
{
extern struct Library *PowerPCBase;
return RemTailPPC_(PowerPCBase,a1);
}
__inline VOID AddSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
AddSemaphorePPC_(PowerPCBase,a1);
}
__inline LONG AttemptSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
return AttemptSemaphorePPC_(PowerPCBase,a1);
}
__inline struct SignalSemaphorePPC *FindSemaphorePPC(STRPTR a1)
{
extern struct Library *PowerPCBase;
return FindSemaphorePPC_(PowerPCBase,a1);
}
__inline VOID FreeSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
FreeSemaphorePPC_(PowerPCBase,a1);
}
__inline LONG InitSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
return InitSemaphorePPC_(PowerPCBase,a1);
}
__inline VOID ObtainSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
ObtainSemaphorePPC_(PowerPCBase,a1);
}
__inline VOID ReleaseSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
ReleaseSemaphorePPC_(PowerPCBase,a1);
}
__inline VOID RemSemaphorePPC(struct SignalSemaphorePPC *a1)
{
extern struct Library *PowerPCBase;
RemSemaphorePPC_(PowerPCBase,a1);
}
__inline LONG AllocSignalPPC(LONG a1)
{
extern struct Library *PowerPCBase;
return AllocSignalPPC_(PowerPCBase,a1);
}
__inline VOID FreeSignalPPC(LONG a1)
{
extern struct Library *PowerPCBase;
FreeSignalPPC_(PowerPCBase,a1);
}
__inline ULONG SetSignalPPC(ULONG a1, ULONG a2)
{
extern struct Library *PowerPCBase;
return SetSignalPPC_(PowerPCBase,a1,a2);
}
__inline VOID SignalPPC(struct TaskPPC *a1, ULONG a2)
{
extern struct Library *PowerPCBase;
SignalPPC_(PowerPCBase,a1,a2);
}
__inline ULONG WaitPPC(ULONG a1)
{
extern struct Library *PowerPCBase;
return WaitPPC_(PowerPCBase,a1);
}
__inline ULONG WaitTime(ULONG a1, ULONG a2)
{
extern struct Library *PowerPCBase;
return WaitTime_(PowerPCBase,a1,a2);
}
__inline struct TaskPPC *CreateTaskPPC(struct TagItem *a1)
{
extern struct Library *PowerPCBase;
return CreateTaskPPC_(PowerPCBase,a1);
}
__inline struct TaskPPC *CreateTaskPPCTags(Tag tag1, ...)
{
extern struct Library *PowerPCBase;
return CreateTaskPPC_(PowerPCBase,(struct TagItem *) &tag1);
}
__inline VOID DeleteTaskPPC(struct TaskPPC *a1)
{
extern struct Library *PowerPCBase;
DeleteTaskPPC_(PowerPCBase,a1);
}
__inline struct TaskPPC *FindTaskPPC(STRPTR a1)
{
extern struct Library *PowerPCBase;
return FindTaskPPC_(PowerPCBase,a1);
}
__inline struct TaskPtr *LockTaskList()
{
extern struct Library *PowerPCBase;
return LockTaskList_(PowerPCBase);
}
__inline LONG SetTaskPriPPC(struct TaskPPC *a1, LONG a2)
{
extern struct Library *PowerPCBase;
return SetTaskPriPPC_(PowerPCBase,a1,a2);
}
__inline VOID UnLockTaskList()
{
extern struct Library *PowerPCBase;
UnLockTaskList_(PowerPCBase);
}
__inline struct TaskPPC *FindTaskByID(LONG a1)
{
extern struct Library *PowerPCBase;
return FindTaskByID_(PowerPCBase,a1);
}
__inline LONG SetNiceValue(struct TaskPPC *a1, LONG a2)
{
extern struct Library *PowerPCBase;
return SetNiceValue_(PowerPCBase,a1,a2);
}
__inline VOID AddPortPPC(struct MsgPortPPC *a1)
{
extern struct Library *PowerPCBase;
AddPortPPC_(PowerPCBase,a1);
}
__inline struct MsgPortPPC *CreateMsgPortPPC()
{
extern struct Library *PowerPCBase;
return CreateMsgPortPPC_(PowerPCBase);
}
__inline VOID DeleteMsgPortPPC(struct MsgPortPPC *a1)
{
extern struct Library *PowerPCBase;
DeleteMsgPortPPC_(PowerPCBase,a1);
}
__inline struct MsgPortPPC *FindPortPPC(STRPTR a1)
{
extern struct Library *PowerPCBase;
return FindPortPPC_(PowerPCBase,a1);
}
__inline struct Message *GetMsgPPC(struct MsgPortPPC *a1)
{
extern struct Library *PowerPCBase;
return GetMsgPPC_(PowerPCBase,a1);
}
__inline VOID PutMsgPPC(struct MsgPortPPC *a1, struct Message *a2)
{
extern struct Library *PowerPCBase;
PutMsgPPC_(PowerPCBase,a1,a2);
}
__inline VOID RemPortPPC(struct MsgPortPPC *a1)
{
extern struct Library *PowerPCBase;
RemPortPPC_(PowerPCBase,a1);
}
__inline VOID ReplyMsgPPC(struct Message *a1)
{
extern struct Library *PowerPCBase;
ReplyMsgPPC_(PowerPCBase,a1);
}
__inline struct Message *AllocXMsgPPC(ULONG a1, struct MsgPortPPC *a2)
{
extern struct Library *PowerPCBase;
return AllocXMsgPPC_(PowerPCBase,a1,a2);
}
__inline VOID FreeXMsgPPC(struct Message *a1)
{
extern struct Library *PowerPCBase;
FreeXMsgPPC_(PowerPCBase,a1);
}
__inline VOID PutXMsgPPC(struct MsgPort *a1, struct Message *a2)
{
extern struct Library *PowerPCBase;
PutXMsgPPC_(PowerPCBase,a1,a2);
}
__inline struct MsgPortPPC *SetReplyPortPPC(struct Message *a1, struct MsgPortPPC *a2)
{
extern struct Library *PowerPCBase;
return SetReplyPortPPC_(PowerPCBase,a1,a2);
}
__inline struct TagItem *FindTagItemPPC(ULONG a1, struct TagItem *a2)
{
extern struct Library *PowerPCBase;
return FindTagItemPPC_(PowerPCBase,a1,a2);
}
__inline ULONG GetTagDataPPC(ULONG a1, ULONG a2, struct TagItem *a3)
{
extern struct Library *PowerPCBase;
return GetTagDataPPC_(PowerPCBase,a1,a2,a3);
}
__inline struct TagItem *NextTagItemPPC(struct TagItem **a1)
{
extern struct Library *PowerPCBase;
return NextTagItemPPC_(PowerPCBase,a1);
}
__inline VOID ChangeMMU(ULONG a1)
{
extern struct Library *PowerPCBase;
ChangeMMU_(PowerPCBase,a1);
}
__inline VOID GetInfo(struct TagItem *a1)
{
extern struct Library *PowerPCBase;
GetInfo_(PowerPCBase,a1);
}
__inline VOID SetCache(ULONG a1, APTR a2, ULONG a3)
{
extern struct Library *PowerPCBase;
SetCache_(PowerPCBase,a1,a2,a3);
}
__inline ULONG SetHardware(ULONG a1, APTR a2)
{
extern struct Library *PowerPCBase;
return SetHardware_(PowerPCBase,a1,a2);
}
__inline VOID GetHALInfo(struct TagItem *a1)
{
extern struct Library *PowerPCBase;
GetHALInfo_(PowerPCBase,a1);
}
__inline VOID SetScheduling(struct TagItem *a1)
{
extern struct Library *PowerPCBase;
SetScheduling_(PowerPCBase,a1);
}
__inline VOID ModifyFPExc(ULONG a1)
{
extern struct Library *PowerPCBase;
ModifyFPExc_(PowerPCBase,a1);
}
__inline VOID RemExcHandler(APTR a1)
{
extern struct Library *PowerPCBase;
RemExcHandler_(PowerPCBase,a1);
}
__inline APTR SetExcHandler(struct TagItem *a1)
{
extern struct Library *PowerPCBase;
return SetExcHandler_(PowerPCBase,a1);
}
__inline APTR SetExcHandlerTags(Tag tag1, ...)
{
extern struct Library *PowerPCBase;
return SetExcHandler_(PowerPCBase,(struct TagItem *) &tag1);
}
__inline VOID SetExcMMU()
{
extern struct Library *PowerPCBase;
SetExcMMU_(PowerPCBase);
}
__inline VOID ClearExcMMU()
{
extern struct Library *PowerPCBase;
ClearExcMMU_(PowerPCBase);
}
__inline ULONG Super()
{
extern struct Library *PowerPCBase;
return Super_(PowerPCBase);
}
__inline VOID User(ULONG a1)
{
extern struct Library *PowerPCBase;
User_(PowerPCBase,a1);
}
__inline VOID Signal68K(struct Task *a1, ULONG a2)
{
extern struct Library *PowerPCBase;
Signal68K_(PowerPCBase,a1,a2);
}
#endif /* POWERPCLIB_V7 */
#endif /* __PPC__ */
#endif /* STORMPROTOS_POWERPC_SPROTOS_H */